﻿'
' Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 
' documentation files (the "Software"), to deal in the Software without restriction, including without limitation 
' the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and 
' to permit persons to whom the Software is furnished to do so, subject to the following conditions:
'
' The above copyright notice and this permission notice shall be included in all copies or substantial portions 
' of the Software.
'
' THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
' INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
' DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
' SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
' SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
' WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
' THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Imports System.Web
Imports System.Text

Namespace XmlRpc


    Public MustInherit Class XmlRpcBase

        

        ''' <summary>
        ''' Convert Date to format expected by MetaWeblog Response.
        ''' </summary>
        ''' <param name="dt">DateTime to conver</param>
        ''' <returns>ISO8601 date string</returns>
        ''' <remarks>Inspired from BlogEngine.Net BlogEngine.Core.API.MetaWeblog.XMLRPCResponse</remarks>
        Protected Shared Function ConvertDatetoISO8601(ByVal dt As DateTime) As String
            Dim yyyy As String = dt.Year.ToString
            Dim MM As String = dt.Month.ToString.PadLeft(2, "0")
            Dim dd As String = dt.Day.ToString.PadLeft(2, "0")
            Dim HH As String = dt.Hour.ToString.PadLeft(2, "0")
            Dim min As String = dt.Minute.ToString.PadLeft(2, "0")
            Dim ss As String = dt.Second.ToString.PadLeft(2, "0")
            Return String.Format("{0}{1}{2}T{3}:{4}:{5}", yyyy, MM, dd, HH, min, ss)
        End Function




    End Class

End Namespace